In wireless networks, available effective bandwidth can vary from time to time depending on the channel conditions. For video over wireless networks and for good user experience, video senders need to adapt transmission bit rate based on available bandwidth. The video senders can rely on feedback from receivers to “guess” the available bandwidth. The feedback can include a RTP Control Protocol (RTCP) receiver report in Real-time Transport Protocol (RTP) for User Datagram Protocol (UDP) based systems or the effective throughput as seen by the sender in case of Hypertext Transfer Protocol (HTTP) based systems. Note, this feedback is on a per-stream basis, e.g. for each RTP media stream, there is a corresponding RTCP feedback channel which carries feedback about that and only that media stream. In clients (receivers) which receive more than one video stream at a time, various problems exist in conventional systems and methods. For example, since RTCP receiver reports are independent and are specific to a stream, the actions taken in response to these reports are applied only to those streams. For example, bit rate upshifts and downshifts will happen independently for each stream. The feedback intervals usually will not be aligned (though equal in duration) as each stream is an independent session and could have been established at different times. Due to the non-alignment, a spurt in losses may or may not result in all streams downshifting at the same time and some may not downshift at all. Similarly, not having any losses over a period of time may or may not result in all streams upshifting and some may not upshift at all. This unsynchronized behavior will cause some streams downshift too much and some other streams upshift too much, resulting in asymmetric profiles. From a user perspective, this would result in seeing one stream with good quality and another stream with bad quality on a same wireless connection.
Accordingly, there is a need for fairly sharing bandwidth across multiple video streams in a wireless network. Similarly, in some situations there could be a need for the client to differentiate between multiple streams in terms of quality in lossy conditions, during the session. It might want to accord higher priority to some streams compared to others.
Skilled artisans will appreciate that elements in the figures are illustrated for simplicity and clarity and have not necessarily been drawn to scale. For example, the dimensions of some of the elements in the figures may be exaggerated relative to other elements to help to improve understanding of embodiments of the present invention.
The apparatus and method components have been represented where appropriate by conventional symbols in the drawings, showing only those specific details that are pertinent to understanding the embodiments of the present invention so as not to obscure the disclosure with details that will be readily apparent to those of ordinary skill in the art having the benefit of the description herein.